package com.ourteam.product.requirement.dao;

/**
 * Template Name : DAO数据对象
 * Template Version : 1
 * Template Last Modfiy Date : Fri Aug 18 15:51:23 CST 2017
 * Auto Generate Date : 2018-05-03 16:45:19
  * Warning ! This file will be overwrite when regenerate !
  *
 */
import org.apache.commons.lang.StringUtils;


public class ProductGlossaryAttr implements java.io.Serializable {
    private long id;

    /**
     * Attribute id Be Seted Falg
     */
    private boolean idSetted = false;

    /**
    * Attribute id is Null Falg
    */
    private boolean idNull = false;
    private long productDefineId;

    /**
     * Attribute productDefineId Be Seted Falg
     */
    private boolean productDefineIdSetted = false;

    /**
    * Attribute productDefineId is Null Falg
    */
    private boolean productDefineIdNull = false;
    private long productGlossaryId;

    /**
     * Attribute productGlossaryId Be Seted Falg
     */
    private boolean productGlossaryIdSetted = false;

    /**
    * Attribute productGlossaryId is Null Falg
    */
    private boolean productGlossaryIdNull = false;
    private String attrName;

    /**
     * Attribute attrName Be Seted Falg
     */
    private boolean attrNameSetted = false;

    /**
    * Attribute attrName is Null Falg
    */
    private boolean attrNameNull = false;
    private String attrType;

    /**
     * Attribute attrType Be Seted Falg
     */
    private boolean attrTypeSetted = false;

    /**
    * Attribute attrType is Null Falg
    */
    private boolean attrTypeNull = false;
    private String dataRule;

    /**
     * Attribute dataRule Be Seted Falg
     */
    private boolean dataRuleSetted = false;

    /**
    * Attribute dataRule is Null Falg
    */
    private boolean dataRuleNull = false;
    private String status;

    /**
     * Attribute status Be Seted Falg
     */
    private boolean statusSetted = false;

    /**
    * Attribute status is Null Falg
    */
    private boolean statusNull = false;
    private String remarks;

    /**
     * Attribute remarks Be Seted Falg
     */
    private boolean remarksSetted = false;

    /**
    * Attribute remarks is Null Falg
    */
    private boolean remarksNull = false;
    private String isRequire;

    /**
     * Attribute isRequire Be Seted Falg
     */
    private boolean isRequireSetted = false;

    /**
    * Attribute isRequire is Null Falg
    */
    private boolean isRequireNull = false;

    public ProductGlossaryAttr() {
        super();
    }

    /**
         * Get id
         *
         * @return long
         */
    final public long getId() {
        return id;
    }

    /**
     * Set id
     *
     * @param long
     */
    final public void setId(long id) {
        this.id = id;

        this.idSetted = true;

        this.setIdNull(false);
    }

    /**
     * Get id Has Been Setted
     *
     * @return boolean
     */
    final public boolean isIdSetted() {
        return this.idSetted;
    }

    /**
     * Set id Null
     *
     */
    final public void setIdNull() {
        this.idNull = true;
    }

    final public void setIdNull(boolean aNullFlag) {
        this.idNull = aNullFlag;
    }

    final public boolean isIdNull() {
        return this.idNull;
    }

    /**
         * Get productDefineId
         *
         * @return long
         */
    final public long getProductDefineId() {
        return productDefineId;
    }

    /**
     * Set productDefineId
     *
     * @param long
     */
    final public void setProductDefineId(long productDefineId) {
        this.productDefineId = productDefineId;

        this.productDefineIdSetted = true;

        this.setProductDefineIdNull(false);
    }

    /**
     * Get productDefineId Has Been Setted
     *
     * @return boolean
     */
    final public boolean isProductDefineIdSetted() {
        return this.productDefineIdSetted;
    }

    /**
     * Set productDefineId Null
     *
     */
    final public void setProductDefineIdNull() {
        this.productDefineIdNull = true;
    }

    final public void setProductDefineIdNull(boolean aNullFlag) {
        this.productDefineIdNull = aNullFlag;
    }

    final public boolean isProductDefineIdNull() {
        return this.productDefineIdNull;
    }

    /**
         * Get productGlossaryId
         *
         * @return long
         */
    final public long getProductGlossaryId() {
        return productGlossaryId;
    }

    /**
     * Set productGlossaryId
     *
     * @param long
     */
    final public void setProductGlossaryId(long productGlossaryId) {
        this.productGlossaryId = productGlossaryId;

        this.productGlossaryIdSetted = true;

        this.setProductGlossaryIdNull(false);
    }

    /**
     * Get productGlossaryId Has Been Setted
     *
     * @return boolean
     */
    final public boolean isProductGlossaryIdSetted() {
        return this.productGlossaryIdSetted;
    }

    /**
     * Set productGlossaryId Null
     *
     */
    final public void setProductGlossaryIdNull() {
        this.productGlossaryIdNull = true;
    }

    final public void setProductGlossaryIdNull(boolean aNullFlag) {
        this.productGlossaryIdNull = aNullFlag;
    }

    final public boolean isProductGlossaryIdNull() {
        return this.productGlossaryIdNull;
    }

    /**
         * Get attrName
         *
         * @return String
         */
    final public String getAttrName() {
        if (isAttrNameNull()) {
            return null;
        } else {
            return StringUtils.trim(attrName);
        }
    }

    /**
     * Set attrName
     *
     * @param String
     */
    final public void setAttrName(String attrName) {
        this.attrName = StringUtils.trim(attrName);

        this.attrNameSetted = true;

        this.setAttrNameNull(this.attrName == null);
    }

    /**
     * Get attrName Has Been Setted
     *
     * @return boolean
     */
    final public boolean isAttrNameSetted() {
        return this.attrNameSetted;
    }

    /**
     * Set attrName Null
     *
     */
    final public void setAttrNameNull() {
        this.attrNameNull = true;
    }

    final public void setAttrNameNull(boolean aNullFlag) {
        this.attrNameNull = aNullFlag;
    }

    final public boolean isAttrNameNull() {
        return this.attrNameNull;
    }

    /**
         * Get attrType
         *
         * @return String
         */
    final public String getAttrType() {
        if (isAttrTypeNull()) {
            return null;
        } else {
            return StringUtils.trim(attrType);
        }
    }

    /**
     * Set attrType
     *
     * @param String
     */
    final public void setAttrType(String attrType) {
        this.attrType = StringUtils.trim(attrType);

        this.attrTypeSetted = true;

        this.setAttrTypeNull(this.attrType == null);
    }

    /**
     * Get attrType Has Been Setted
     *
     * @return boolean
     */
    final public boolean isAttrTypeSetted() {
        return this.attrTypeSetted;
    }

    /**
     * Set attrType Null
     *
     */
    final public void setAttrTypeNull() {
        this.attrTypeNull = true;
    }

    final public void setAttrTypeNull(boolean aNullFlag) {
        this.attrTypeNull = aNullFlag;
    }

    final public boolean isAttrTypeNull() {
        return this.attrTypeNull;
    }

    /**
         * Get dataRule
         *
         * @return String
         */
    final public String getDataRule() {
        if (isDataRuleNull()) {
            return null;
        } else {
            return StringUtils.trim(dataRule);
        }
    }

    /**
     * Set dataRule
     *
     * @param String
     */
    final public void setDataRule(String dataRule) {
        this.dataRule = StringUtils.trim(dataRule);

        this.dataRuleSetted = true;

        this.setDataRuleNull(this.dataRule == null);
    }

    /**
     * Get dataRule Has Been Setted
     *
     * @return boolean
     */
    final public boolean isDataRuleSetted() {
        return this.dataRuleSetted;
    }

    /**
     * Set dataRule Null
     *
     */
    final public void setDataRuleNull() {
        this.dataRuleNull = true;
    }

    final public void setDataRuleNull(boolean aNullFlag) {
        this.dataRuleNull = aNullFlag;
    }

    final public boolean isDataRuleNull() {
        return this.dataRuleNull;
    }

    /**
         * Get status
         *
         * @return String
         */
    final public String getStatus() {
        if (isStatusNull()) {
            return null;
        } else {
            return StringUtils.trim(status);
        }
    }

    /**
     * Set status
     *
     * @param String
     */
    final public void setStatus(String status) {
        this.status = StringUtils.trim(status);

        this.statusSetted = true;

        this.setStatusNull(this.status == null);
    }

    /**
     * Get status Has Been Setted
     *
     * @return boolean
     */
    final public boolean isStatusSetted() {
        return this.statusSetted;
    }

    /**
     * Set status Null
     *
     */
    final public void setStatusNull() {
        this.statusNull = true;
    }

    final public void setStatusNull(boolean aNullFlag) {
        this.statusNull = aNullFlag;
    }

    final public boolean isStatusNull() {
        return this.statusNull;
    }

    /**
         * Get remarks
         *
         * @return String
         */
    final public String getRemarks() {
        if (isRemarksNull()) {
            return null;
        } else {
            return StringUtils.trim(remarks);
        }
    }

    /**
     * Set remarks
     *
     * @param String
     */
    final public void setRemarks(String remarks) {
        this.remarks = StringUtils.trim(remarks);

        this.remarksSetted = true;

        this.setRemarksNull(this.remarks == null);
    }

    /**
     * Get remarks Has Been Setted
     *
     * @return boolean
     */
    final public boolean isRemarksSetted() {
        return this.remarksSetted;
    }

    /**
     * Set remarks Null
     *
     */
    final public void setRemarksNull() {
        this.remarksNull = true;
    }

    final public void setRemarksNull(boolean aNullFlag) {
        this.remarksNull = aNullFlag;
    }

    final public boolean isRemarksNull() {
        return this.remarksNull;
    }

    /**
         * Get isRequire
         *
         * @return String
         */
    final public String getIsRequire() {
        if (isIsRequireNull()) {
            return null;
        } else {
            return StringUtils.trim(isRequire);
        }
    }

    /**
     * Set isRequire
     *
     * @param String
     */
    final public void setIsRequire(String isRequire) {
        this.isRequire = StringUtils.trim(isRequire);

        this.isRequireSetted = true;

        this.setIsRequireNull(this.isRequire == null);
    }

    /**
     * Get isRequire Has Been Setted
     *
     * @return boolean
     */
    final public boolean isIsRequireSetted() {
        return this.isRequireSetted;
    }

    /**
     * Set isRequire Null
     *
     */
    final public void setIsRequireNull() {
        this.isRequireNull = true;
    }

    final public void setIsRequireNull(boolean aNullFlag) {
        this.isRequireNull = aNullFlag;
    }

    final public boolean isIsRequireNull() {
        return this.isRequireNull;
    }

    public int hashCode() {
        final int prime = 31;
        int result = 1;

        result = (prime * result) + (int) (getId() ^ (getId() >>> 32));

        return result;
    }

    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }

        if ((obj instanceof ProductGlossaryAttr) == false) {
            return false;
        }

        ProductGlossaryAttr other = (ProductGlossaryAttr) obj;

        if (getId() != other.getId()) {
            return false;
        }

        return true;
    }

    public String toString() {
        StringBuffer buffer = new StringBuffer();

        buffer.append("[");

        buffer.append("id=");
        buffer.append(this.id);

        buffer.append("productDefineId=");
        buffer.append(this.productDefineId);

        buffer.append("productGlossaryId=");
        buffer.append(this.productGlossaryId);

        buffer.append("attrName=");
        buffer.append(this.attrName);

        buffer.append("attrType=");
        buffer.append(this.attrType);

        buffer.append("dataRule=");
        buffer.append(this.dataRule);

        buffer.append("status=");
        buffer.append(this.status);

        buffer.append("remarks=");
        buffer.append(this.remarks);

        buffer.append("isRequire=");
        buffer.append(this.isRequire);

        buffer.append("]");

        return buffer.toString();
    }
}
